package framework.beans.factory.support;

import framework.beans.BeanDefinition;

/**
 * @author: LunBoWang
 * @description: 注册表对象
 * @date: 2025/5/17 下午2:07
 * @version: 1.0
 */

public interface BeanDefinitionRegistry {

    //注册BeanDefinition对象到注册表中
    void registerBeanDefinition(String beanName, BeanDefinition beanDefinition);

    //从注册表中删除指定名称的BeanDefinition对象
    void removeBeanDefinition(String beanName) throws Exception;

    //根据指定的beanName获取BeanDefinition对象
    BeanDefinition getBeanDefinition(String beanName) throws Exception;

    boolean containsBeanDefinition(String beanName);

    int getBeanDefinitionCount();

    String[] getBeanDefinitionNames();
}
